<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Avtorizasiya</title>
</head>
<body bgcolor="#ffffff">
	<h1>Avtorizasiya</h1>
	<p>
		Zap yapar, bir neçə növ identifikasiyası (qondarma <b>üsulları identifikasiyası</b>) istifadə edilə bilər ki, web sites üçün / web applications. Hər bir element <b><a
			href="contexts.html">kontekstində</a></b> müəyyən bir üsul identifikasiyası olan diktə edir emal identifikasiyası. İdentifikasiyası üçün istifadə olunur yaratmaq, web ki, sessiyanın uyğun həqiqiliyini web apps <a href="users.html">İstifadəçilər</a>.
	</p>

	<p>
		Müəyyən etmək üçün zaman cavab veb-server uyğun аутентифицированных sorğu, bir sıra göstəricilərin müəyyən edilə bilər. <b>daxil vəziyyət</b>, əgər o, mövcud mesajını (mövzu və ya bədənində), o deməkdir ki, mesaj uyğun аутентифицированный sorğu (məsələn, olması "çıxış". arayış " və ya "xoş gəlmisiniz, İstifadəçi x' şablon). Bircür, <b>çıxış işığı</b> göstərir sorğu olmadan identifikasiyası (məsələn, mövcudluğu 'giriş'). Əgər zap ki, aşkar çıxış göstərici olacaq təkrar yoxlamadan keçmək həqiqiliyini, əks halda ehtimal olunur ki, artıq müəyyən edilmişdir və davam edəcək, adətən  
		Yalnız bir (1) iki (2) göstəricilər üçün lazım olan düzgün funksionallığı. Bu halda, əgər heç biri göstəricilərinin müəyyən edilmişdir, bütün mesajları hesab olunur, default, ötən yoxlanılması.
	</p>
		
	<p> Yüklemek üçün biri <b>giriş/çıxış göstəriciləri</b>, ya da yazın bir ifadə birbaşa <i><a href="../../ui/dialogs/session/contexts.html#auth">xassələri</a> dialoqu -> identifikasiyası panel -> ınput/output Göstərici sahələri</i>, ya da tapmaq проверенного mesajlar saytlarında, ağac üzərinə gedin və onu açmaq cavab görmək və seçmək istədiyiniz mətn kimi müəyyən göstərici istifadə edərək, bir siçan seçin və <i>bayrağımız kontekstində... Giriş/çıxış işığı</i> sağ menu item.
	</p>

	<p>In order to perform the authentication of a user on a website / in a webapp, the Authentication Method defines how the authentication is done (the process), while the necessary credentials (the exact identifiers) are dependent on the user, so, in ZAP, they are configured in the Users.</p>
	
	<p>The generic <b>main steps</b> lazımdır ki qurmaq identifikasiyası üçün veb-proqramlar aşağıdakılardır:
	<ol>
		<li>düzgün qurmaq zap <a href="contexts.html">kontekstində</a> web app</li>
		<li>müəyyən <a href="sessionManagement.html">idarəsi сеансом metodu</a> kontekstində üçün o, istifadə olunur ki, sizin app</li>
		<li>quraşdırma metodu identifikasiyası üçün kontekstində:
			<ol>
				<li>konfiqurasiya, heç olmasa, biri <i>daxil vəziyyət</i> və ya <i>çıxış işığı</i>, yuxarıda izah edildiyi kimi</li>
				<li>quraşdırma metodu identifikasiyası üçün proqram göstərilməklə bütün tələbləri (aşağıda göstərildiyi kimi)</li>
			</ol>
		</li> 
		<li>konfiqurasiya dəsti <a href="users.html">İstifadəçilər</a> kontekstində üçün, ki, birbaşa uyğun üsul identifikasiyası üçün rabitə</li>
	</ol>

	<p>Texnika identifikasiyası üçün istifadə edilə bilər bir çox yerlərdə ətrafında zap. Bəzi nümunələr daxildir:</p>
	<ul>
		<li>defining Users and automatic login</li>
		<li>detection of authenticated/unauthenticated states</li>
		<li>performing automatic re-authentication</li>
	</ul>

	<p>Bir neçə üsulları identifikasiyası icra edilmişdir və sistem imkan verir asanlıqla əlavə yeni metodlardan asılı olaraq, ehtiyaclarını istifadəçi. Onlar əsas onlardan aşağıda təsvir olunur.</p>

	<h3>
		<a name="manual">Göstərişlə Avtorizasiya</a>
	</h3>
	<p>Bu üsul imkan verir yerinə identifikasiyası əl ilə (məsələn, identifikasiyası brauzerinizin kimi bir proxy ki vasitəsilə zap) seçin müvafiq http seans Kimi faktiki identifikasiyası həyata keçirilir sizin bu üsul bilmir re-identifikasiyası halda app açan istifadəçi.
	</p>
	
	<p>When using this authentication method, configuring a User for the context 
	require choosing an authenticated HTTP session.</p>

	<h3>
		<a name="formBased">Form-Based Authentication</a>
	</h3>
	<p>
		This method is used for websites / webapps where authentication is
		done by submitting a form or performing a GET request to a 'login url'
		using a 'username/password' pair of authentication credentials.
		Re-authentication is possible. Configuration can be done using the <a
			href="../../ui/dialogs/session/contexts.html#auth">Session
			Contexts Dialog</a> or using the contextual PopupMenu: <i>Flag as...
			Form-Based Authentication Login Request</i>.
	</p>
	<p>When using this authentication method, configuring a User for the context requires
	setting up the <i>username/password</i> pair of credentials that are used for the form based
	authentication.</p>
	
	<h3>
		<a name="httpAuth">HTTP/NTLM Avtorizasiya</a>
	</h3>
	<p>
		This method is used for websites / webapps where authentication is
		enforced using the HTTP or NTLM Authentication mechanisms employing HTTP message headers. 
		Three authentication schemes are supported: Basic, Digest and NTLM.
		Re-authentication is possible, as the authentication headers are sent with every authenticated
		request. Configuration can be done using the <a
			href="../../ui/dialogs/session/contexts.html#auth">Session
			Contexts Dialog</a>.
	</p>
	<p>When using this authentication method, configuring a User for the context requires
	setting up the <i>username/password</i> pair of credentials that are used for the HTTP/NTLM authentication.</p>
	
	<h3>
		<a name="scriptBased">Script-Based Authentication</a>
	</h3>
	<p>
		This method is useful for websites / webapps where the authentication is a more complex one and some custom
		scripts that handle the authentication process are beneficial. To use this method, you must first define an Authentication script
		which sends messages or performs other actions as needed by your web-application. This script is then selected for use for a given Context
		and it is called whenever an authentication is performed. Re-authentication is possible. 
		Configuration can be done using the <a href="../../ui/dialogs/session/contexts.html#auth">Session
			Contexts Dialog</a> and requires you to have the Scripts Console ZAP Addon installed from the Marketplace.
	</p>
	<p>When using this authentication method, configuring a User for the context requires
	setting up the a set of parameters defined in the script. For more details, see the provided Authentication Script examples.</p>
	
	<h2>Configuration example</h2>
	<p>A configuration example showing how to fully configure a webapp that uses <i>form-based authentication</i> and
	<i>cookie-based session management</i> is 
	seen below:
	<ol>
		<li>set up a context for the web application</li>
		<li>set up the session management method to <i>Cookie-based Session Management</i></li>
		<li>make sure your browser proxies everything through ZAP and log into your application using the browser</li>
		<li>go to ZAP and identify the request that was done for the login (most usually it's a HTTP POST request 
		containing the username and the password and possibly other elements)</li>
		<li>right click on the request and Flag as Context... Form-based Auth Login Request</li>
		<li>a window will be opened already containing the request URL and the parameters (if any). Use 
		the dropdown options to select which of the parameters correspond to the username and to the password</li>
    	<li>then you need to tell ZAP how to identify whether an authentication succeeded or not. You can do 
    	this by setting logged in or logged out indicators. These are regex patterns which, if found in a 
    	response, tell ZAP whether it's authenticated or not (e.g. presence of a 
    	http://example.com/logout link or the presence of a 'Welcome, User X'). Only one of them is
    	necessary. To set one of them, either type the regex directly in the Session Properties -> 
    	Authentication -> Logged In Indicator, either find an authenticated message in the Sites Tree,
    	select it, open the Response View and select the text you wish to define as the indicator using
    	the mouse and select the Flag as Context... Logged in indicator right-click menu option.</li>
    	<li>define as many users as you need in the Session Properties -> Users section.</li>
    	<li>after this step, various actions are available in ZAP. For example, you can now select the user in <a href="../../ui/dialogs/spider.html">Spider dialogue</a>. Or, using the Forced User Mode, you can force all the interactions that go through ZAP for a given Context to be from the perspective of a User. The User Forced Mode is enabled via the previous-to-last button in the toolbar (the one with the user and the lock) and is configured via Session Properties -> Forced User Mode.</li>
	</ol>
	
	Most of the steps above apply as well for other authentication methods. The only things that change when trying
	to configure authentication using a different method are steps 3, 4, 5 and 6. Instead of these, select the authentication
	method required from the drop-down list and configure it as needed. More details about configuring each type 
	of authentication can be above and <a href="../../ui/dialogs/session/contexts.html">here</a>.

	<h2>Configured via</h2>
	<table>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="../../ui/dialogs/session/contexts.html#auth">Session Properties dialog</a></td>
			<td></td>
		</tr>
	</table>

	<h2>See also</h2>
	<table>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="https://youtu.be/cR4gw-cPZOA">Youtube tutorial</a></td>
			<td>of the Authentication, Session Management and Users Management features of ZAP [external link to https://youtu.be/cR4gw-cPZOA].</td>
		</tr>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="../../ui/overview.html">UI Overview</a></td>
			<td>for an overview of the user interface</td>
		</tr>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="concepts.html">Features</a></td>
			<td>provided by ZAP</td>
		</tr>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="../../ui/dialogs/session/contexts.html">Session
					Contexts Dialog</a></td>
			<td>for an overview of the Session Properties</td>
		</tr>
		<tr>
			<td>&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td><a href="users.html">Users</a></td>
			<td>for an overview of Users</td>
		</tr>

	</table>

</body>
</html>
